package com.sg.dto.biz.pbff.req;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @desc BffAddMemberVirtualImageReqDto
 * @使用场景
 */
@Data
public class BffAddMemberVirtualImageReqDto implements Serializable {

    /**
     * 选用虚拟形象ID
     */
    @NotNull(message = "选用虚拟形象ID不能为空")
    @ApiModelProperty("选用虚拟形象ID")
    private String virtualImageId;

    /**
     * 虚拟形象标识
     */
    @NotNull(message = "虚拟形象标识不能为空")
    @ApiModelProperty("虚拟形象标识")
    private String virtualImageCode;

    /**
     * 身份人员ID
     */
    @NotNull(message = "身份人员ID不能为空")
    @ApiModelProperty("身份人员ID")
    private String originalRoleMemberId;

    /**
     * 冗余个人账号ID
     */
    @NotNull(message = "冗余个人账号ID不能为空")
    @ApiModelProperty("冗余个人账号ID")
    private String userId;

    /**
     * 冗余使用场景类型编码 SYSTEM:消息
     */
    @NotNull(message = "冗余使用场景类型编码不能为空")
    @ApiModelProperty("冗余使用场景类型编码")
    private String sceneTypeCode;

    /**
     * 使用场景子类型 STRONG_REMINDER_BY_ASSISTANT:助手强提醒 CHAT_VIRTUAL_IMAGE:沟通形象 CONTENT_VIRTUAL:内容消息形象
     */
    @NotNull(message = "使用场景子类型不能为空")
    @ApiModelProperty("使用场景子类型")
    private String sceneSubTypeCode;

    /**
     * 虚拟形象展示用途类型 SELF_COGNITION:自醒 OTHER_COGNITION:他醒
     */
    @NotNull(message = "虚拟形象展示用途类型不能为空")
    @ApiModelProperty("虚拟形象展示用途类型")
    private String virtualImageViewType;

    /**
     * 冗余是否自定义形象 TRUE:是 FALSE:否
     */
    @NotNull(message = "冗余是否自定义形象不能为空")
    @ApiModelProperty("冗余是否自定义形象")
    private String isCustomImage;

    /**
     * 创建于空间ID
     */
    @NotNull(message = "创建于空间ID不能为空")
    @ApiModelProperty("创建于空间ID")
    private String spaceId;

}
